One or more aspects relate, in general, to multi-threaded processors, and in particular, to controlling execution of threads in such processors.
A processor may include multiple hardware threads that have instructions executing simultaneously. Such a processor is said to implement simultaneous multi-threading (SMT), which is a technique used to improve overall efficiency of a processor by permitting multiple independent threads of execution to better utilize resources provided by modern processor architectures.
By controlling execution of the threads of a multi-threaded processor, further efficiencies may be gained.